#ifndef XGE_XUNITTEST_XTYPE_TRAIT_H_
#define XGE_XUNITTEST_XTYPE_TRAIT_H_

#include "xge_common_config.h"
#include "xunit_test.h"
#include "xsys_log.h"
#include "xtype_trait.h"
#include "xstring.h"
#include "xtype.h"

UNIT_TEST(XTT,Case1) {
  int a;
  volatile int b;
  const int c =1;
  volatile const int d= 1;
  const volatile int e= 3;

  XASSERT(
    xge::is_int(a) &&
    xge::is_int(b) &&
    xge::is_int(c) &&
    xge::is_int(d) &&
    xge::is_int(e) 
     );

}

UNIT_TEST(XTT,Case2) {
  float a;
  xge::String b;
  char c;
  bool e;
  xge::Rect f;
  xge::Point g;

  XASSERT(
     xge::is_float(a) &&
    !xge::is_int(b) &&
     xge::is_string(b) &&
     xge::is_char(c) &&
     xge::is_bool(e) &&
     xge::is_rect(f)&&
     xge::is_point(g)
    );

}




#endif// XGE_XUNITTEST_XTYPE_TRAIT_H_